package com.nc.solutions.rentacar.manager;

import com.nc.solutions.rentacar.domain.car.ICar;
import java.util.Map;

/**
 * @author Alex Avdeychik
 */
public interface ICarManager {
    /**
     * Getting copy of car map
     * @return Map<Integer, ICar> with all cars
     */
    Map<Integer, ICar> getCarMap();

    /**
     * Adding new car to manager
     * @param car
     */
    void addCar(ICar car);

    /**
     * Removing car by its id
     * @param carId is car id to delete
     * @return true if car delete successfully
     */
    boolean removeCar(int carId);

    /**
     * Getting car by its id
     * @param carId is car id
     * @return required car
     */
    ICar getCar(int carId);


}
